class ArchievesAbilityDetailEntity {
	List<ArchievesAbilityDetailPropertylist> propertyList;
	int totalPages;
	int totalCount;
	int currentPage;

	ArchievesAbilityDetailEntity({this.propertyList, this.totalPages, this.totalCount, this.currentPage});

	ArchievesAbilityDetailEntity.fromJson(Map<String, dynamic> json) {
		if (json['propertyList'] != null) {
			propertyList = new List<ArchievesAbilityDetailPropertylist>();(json['propertyList'] as List).forEach((v) { propertyList.add(new ArchievesAbilityDetailPropertylist.fromJson(v)); });
		}
		totalPages = json['totalPages'];
		totalCount = json['totalCount'];
		currentPage = json['currentPage'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		if (this.propertyList != null) {
      data['propertyList'] =  this.propertyList.map((v) => v.toJson()).toList();
    }
		data['totalPages'] = this.totalPages;
		data['totalCount'] = this.totalCount;
		data['currentPage'] = this.currentPage;
		return data;
	}
}

class ArchievesAbilityDetailPropertylist {
	int weightPercent;
	String skillType;
	String achieve;
	String idol;
	String type;
	String title;
	int percent;
	int min;
	String illPropertyId;
	int bodyMin;
	String iconUrl;
	String propertyId;
	int value;
	String weightPropose;
	dynamic illness;
	int criticalValue;
	int level;
	int max;
	int bodyMax;
	String weightType;
	int weightGrade;
	dynamic effect;
	String name;
	String criticalDesc;
	String studyId;
	String desc;

	ArchievesAbilityDetailPropertylist({this.weightPercent, this.skillType, this.achieve, this.idol, this.type, this.title, this.percent, this.min, this.illPropertyId, this.bodyMin, this.iconUrl, this.propertyId, this.value, this.weightPropose, this.illness, this.criticalValue, this.level, this.max, this.bodyMax, this.weightType, this.weightGrade, this.effect, this.name, this.criticalDesc, this.studyId, this.desc});

	ArchievesAbilityDetailPropertylist.fromJson(Map<String, dynamic> json) {
		weightPercent = json['weightPercent'];
		skillType = json['skillType'];
		achieve = json['achieve'];
		idol = json['idol'];
		type = json['type'];
		title = json['title'];
		percent = json['percent'];
		min = json['min'];
		illPropertyId = json['illPropertyId'];
		bodyMin = json['bodyMin'];
		iconUrl = json['iconUrl'];
		propertyId = json['propertyId'];
		value = json['value'];
		weightPropose = json['weightPropose'];
		illness = json['illness'];
		criticalValue = json['criticalValue'];
		level = json['level'];
		max = json['max'];
		bodyMax = json['bodyMax'];
		weightType = json['weightType'];
		weightGrade = json['weightGrade'];
		effect = json['effect'];
		name = json['name'];
		criticalDesc = json['criticalDesc'];
		studyId = json['studyId'];
		desc = json['desc'];
	}

	Map<String, dynamic> toJson() {
		final Map<String, dynamic> data = new Map<String, dynamic>();
		data['weightPercent'] = this.weightPercent;
		data['skillType'] = this.skillType;
		data['achieve'] = this.achieve;
		data['idol'] = this.idol;
		data['type'] = this.type;
		data['title'] = this.title;
		data['percent'] = this.percent;
		data['min'] = this.min;
		data['illPropertyId'] = this.illPropertyId;
		data['bodyMin'] = this.bodyMin;
		data['iconUrl'] = this.iconUrl;
		data['propertyId'] = this.propertyId;
		data['value'] = this.value;
		data['weightPropose'] = this.weightPropose;
		data['illness'] = this.illness;
		data['criticalValue'] = this.criticalValue;
		data['level'] = this.level;
		data['max'] = this.max;
		data['bodyMax'] = this.bodyMax;
		data['weightType'] = this.weightType;
		data['weightGrade'] = this.weightGrade;
		data['effect'] = this.effect;
		data['name'] = this.name;
		data['criticalDesc'] = this.criticalDesc;
		data['studyId'] = this.studyId;
		data['desc'] = this.desc;
		return data;
	}
}
